<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>
<script>
    // JSON 
    // JSON（JavaScript Object Notation, JS对象简谱）是一种轻量级的数据交换格式
    // 采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写，同时也易于机器解析和生成，并有效地提升网络传输效率。  => JSON字符串

    // JSON对象  (数组和对象)
    // JSON字符串 (json数据)


    // JSON对象  => 是对象的子集 (不是所有的对象都是JSON对象)
    // 1. 结构: 有数组和对象嵌套组成  常见数组对象 对象数组
    // 2. 组成数据的值类型: string number boolean null array object  (不能有undefined 和 函数)

    // JSON字符串的键名必须用 "" , ''  包裹
    // 只有纯JSON格式的JSON字符串 才能被JSON.parse()解析 否则会报错

    // 对象数据   (有undefined 和 函数)
    // var zhang = {
    //     name: "张三",
    //     age: 18,
    //     isStudy: true,
    //     hasMoney: null,
    //     a: undefined,
    //     hobby: ["dance", "sing", "game"],
    //     grade: { ch: 55, mh: 66, eh: 77 },
    //     say: function () {
    //         console.log(this.name, this.age);
    //     }
    // }

    // var str = JSON.stringify(zhang);  // JSON.stringify() 忽略undefined和函数
    // console.log(str);


    // JSON对象
    var zhang = {
        name: "张三",
        age: 18,
        isStudy: true,
        hasMoney: null,
        hobby: ["dance", "sing", "game"],
        grade: { ch: 55, mh: 66, eh: 77 }
    }

    var str = JSON.stringify(zhang);
    console.log(str);






</script>

</html>